2aaa3baafacd0568c8c47e6c5c77bc35c7bf063f,src/freenet/client/async/KeyListenerTracker.java,KeyListenerTracker,anyWantKey,#Key#ClientContext#,189

Before Change


		assert(key instanceof NodeSSK == isSSKScheduler);
		byte[] saltedKey = saltKey(key);
		ArrayList<KeyListener> matches = null;
		synchronized(this) {
			for(KeyListener listener : keyListeners) {
				try {
					if(!listener.probablyWantKey(key, saltedKey)) continue;
				} catch (Throwable t) {
					Logger.error(this, format("Error in probablyWantKey callback for %s", listener), t);
					continue;
				}
				if(matches == null) matches = new ArrayList<KeyListener> ();
				matches.add(listener);
			}
		}
		if(matches != null) {
			for(KeyListener listener : matches) {
				try {
					if(listener.definitelyWantKey(key, saltedKey, sched.clientContext) >= 0)

After Change


	public boolean anyWantKey(Key key, ClientContext context) {
		assert(key instanceof NodeSSK == isSSKScheduler);
		byte[] saltedKey = saltKey(key);
		List<KeyListener> matches = probablyWantKey(key, saltedKey);
		if (!matches.isEmpty()) {
			for (KeyListener listener : matches) {
				try {